Various means of conveying messages are known in the art. In many cases an interest exists in preserving or otherwise maintaining at least some degree of security with respect to conveyance of the message. For example, in some cases it may be desired to prevent an eavesdropping party from gleaning the substantive content of the message. In other cases, as when the message comprises, at least in part, an instruction, command, or similar content it may be desirable to prevent an unauthorized party from effectively transmitting an unauthorized message in order to prevent instigation of unauthorized action by the receiving entity.
For example, movable barrier operators (such as but not limited to garage door openers) often respond to receipt of a wireless remote control signal. In particular, the movable barrier operator will often move a corresponding movable barrier between closed and opened positions in response to such remote control signals. In such a case it often behooves the system operator to seek to ensure that the movable barrier operator will not respond to a remote control signal when transmitted from an unauthorized transmission source.
In some cases the movable barrier operator expects to see a unique identifier or other code in conjunction with, or in lieu of, a specific remote control command. This approach provides at least some degree of security though a more sophisticated unauthorized party may be able to themselves receive such a transmission and co-opt the identifier/code for their own future unauthorized use. With this in mind, so-called rolling codes are often employed to frustrate this approach to breaching the security of such a system. With rolling codes, the code itself changes on a frequent basis pursuant to a plan (such as an implementing algorithm) known to both the transmitter and the receiver. Without knowledge of the underlying scheme by which a next code is selected, an unauthorized party who gains access to a presently used code or identifier will still remain unable to leverage that knowledge in support of effecting unauthorized control over the receiver.
There may be instances, however, when additional security may be desired or appropriate. For example, a given rolling code instantiation may be open to brute force attacks or other weaknesses due to local and/or otherwise unique circumstances.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions and/or relative positioning of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present invention. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention. It will further be appreciated that certain actions and/or steps may be described or depicted in a particular order of occurrence while those skilled in the art will understand that such specificity with respect to sequence is not actually required. It will also be understood that the terms and expressions used herein have the ordinary meaning as is accorded to such terms and expressions with respect to their corresponding respective areas of inquiry and study except where specific meanings have otherwise been set forth herein.